import request from '@/config/axios'

// 树形配置 VO
export interface TreeConfigVO {
  id: number // 节点ID
  parentId: number // 父节点
  name: string // 节点名称
  code: string // 节点代码
  level: number // 节点层级(1开始)
  orderNum: number // 同级排序序号
  configValue: string // 配置值
  configType: string // 配置类型
  description: string // 配置描述
  status: number // 状态（0正常 1停用）
  creatorName: string // 创建者
  updaterName: string // 更新者
}

// 树形配置 API
export const TreeConfigApi = {
  // 查询树形配置列表
  getTreeConfigList: async (params: any) => {
    return await request.get({ url: `/oa/tree-config/list`, params })
  },

  // 查询树形配置详情
  getTreeConfig: async (id: number) => {
    return await request.get({ url: `/oa/tree-config/get?id=` + id })
  },

  // 新增树形配置
  createTreeConfig: async (data: TreeConfigVO) => {
    return await request.post({ url: `/oa/tree-config/create`, data })
  },

  // 修改树形配置
  updateTreeConfig: async (data: TreeConfigVO) => {
    return await request.put({ url: `/oa/tree-config/update`, data })
  },

  // 删除树形配置
  deleteTreeConfig: async (id: number) => {
    return await request.delete({ url: `/oa/tree-config/delete?id=` + id })
  },

  // 导出树形配置 Excel
  exportTreeConfig: async (params) => {
    return await request.download({ url: `/oa/tree-config/export-excel`, params })
  },
}
